AWS CDK Conference Japan 2024 presented by JAWS-UG を開催しました! #cdkconf2024 #jawsug_cdk
はじめに
7/6(土)にAWS CDK Conference Japan 2024 presented by JAWS-UGを開催しました!
イベントで前説や事前準備全般などを担当していた佐藤智樹です。
本記事では開催したイベントの内容とワークショプやセッションについて振り返ります。
イベントページ
動画や当日の実況
当日の状況はTogetterにもまとめてもらっています。Kumadaさんありがとうございます!
イベントスポンサー
今回は前回よりパワーアップして複数社にご支援いただきました。
株式会社Relic様にスタッフや登壇者用のTシャツの費用支援いただきました。株式会社ゆめみ様には当日の水を支援いただきました。また弊社クラスメソッドからもミニカツバーガーを支援いただきました。
スポンサー引き受けていただいた3社様本当にありがとうございます!
以下スポンサーからいただいたもののイメージです。
前説
JAWS-UG CDK支部の活動目的や今回のイベント開催趣旨、会場説明など最初にさせていただきました。後、CDK触ったこと無い方もいると思ったので、ごく簡単にCDKとはそもそも何だったのかも紹介しています。情報量はそんなに無いですが記録として以下に残しています。
会場の雰囲気は全体的にこんな感じでした。開始前から結構埋まっていて、途中から座席足りなくなって他の部屋からもってくるぐらいの大盛況でした!
ワークショップ
前年のワークショップはAWSJのSAの皆さんにゲリラ的に開催いただいたのですが、今年はCDKによくコントリビュートされている皆さんやAWSJの皆さんに事前準備いただいて2つのワークショップを開催できました。
コントリビュートワークショップ
本ワークショップはCDKへのコントリビュート経験やOSS開発などの経験でAWS Heroに認定されたk.gotoさんやCDKへのコントリビュート経験が豊富なnixiemintonさん、WinterYukkyさんに講師になっていただき、CDKへのコントリビュート方法をオフラインでじっくり学んでもらおうという企画です!
ハイレベルなワークショップかなと思っていたのですが、多くの方にご参加いただき満足いただけたようでした。この1日をきっかけに日本のCDKコントリビュータがもっと増えると嬉しいです。自分もやろう。
AWS CDK ワークショップ
本ワークショップはAWS CDK初心者に向けて、アマゾン ウェブ サービス ジャパン合同会社の Solution Architectの方がに講師となっていただき、CDKのはじめの一歩や使い方などをオフラインでじっくり学んでもらおうという企画です!
こちらは逆にCDKを触ったことがない初心者向けをイメージしてもらって実施いただきました。こちらも机の席が足りず、サイドのソファーまで座るほどの、大変好評だったようで良かったです。AWSJのSAの皆さんありがとうございます!
セッション
事前に応募いただいたCfPの中から選定させていただき、今回は合計で12個のセッションを開催しました。セッションは運営の判断で初心者向けそうなセッションから徐々に上級者向けのセッションになるよう構成しました。また初心者向けのセッションのときは上級者向けのワークショップ、上級者向けのセッションのときは初心者向けのワークショップと分かれるように設計して開催しました。
ここからはアップされていた資料の紹介と軽く個人としての感想などをコメントします。
TS何も分からんマンが作ったJAWSDAYS2024ティザーサイト徹底解剖
登壇者:@takuya_y0ne
あのJAWSDAYS2024ティザーサイトの構成でCDKなどを使った際の話でした。
とてもボランティアだけとは思えない高度な構成でConstructの分割も意識されていました。DependabotやBiomeなど継続的な開発で必要になる知見も共有されていて見ごたえのあるセッションでした。今年のJAWS PANKRATIONのサイトも作成中なようで今後も注目です!
CDK初心者が開発で遭遇したトラブルと解決法
登壇者:@Figure_Skate_IT
CDKをチームで新しく始めるときに必ず当たる問題が網羅されていて、これからCDKを始める人には是非読んでから初めてほしいと思える内容でした。特にクラス作成思想のずれはCDKやりすぎていて、忘れていたので改めて始める際は注意しようと思えました。
初心者がおさえておきたいAWS CDKのベストプラクティス 2024年版
登壇者:@konokenj
ソフトウェア開発の基本とAWS CDKの基本で20個もテーマを用意してご紹介いただきました。特に開発者としてはCDKの書き方に注目しがちですが、もっと根源となるCDK自体がもつTenetsへの共感が紹介されていて印象に残りました。またコミュニティの貢献についても触れていただき嬉しかったです。今後もAWSのみなさんとも協力して知見を共有していければと思います!
また当日休憩時間が結構長くなったので即興でCDK漫談も開催しました。突然の声掛けでも参加いただいた高野さん、工藤さんありがとうございました!
脱ぽちぽちを目指してCDKでインフラ構築してみた
登壇者:@kotukotuganbad
CDKを最近触り始めて感動した部分や初めてだと難しい部分を共有いただきました。全体でそんなに説明のなかったL1,L2,L3 Constructについても説明いただき助かりました。特に「アプリと同じ感じでインフラが書ける」という言葉が印象に残りました。改めてこの感動を人に伝えていきたいなと思えるセッションでした。
LocalstackとcdklocalでつくるCDK開発環境入門
登壇者:@h_kusav
LocalStackとcdklocalというCDK支部の今までの発表でも聞いたことのない新しい内容でした。LocalStack自体は自分も知ってたのですが、LocalStack上にCDKでリソースを作れる、cdklocalは知らなかったので非常に参考になりました。テストにおいてFake系のサービスを使うかどうか議論はありますが、このぐらい簡単に試せるなら使ってみたいと思えるようなセッションでした。
CDKアプリとしてのAmplify Gen2 - @aws-amplify/backendのアーキテクチャにみるCDKベストプラクティス -
登壇者:@fossamagna
Amplify Gen 2自体の構成とCDKの関係性、そこで使われているCDKの実装テクニックについてご紹介いただきました。Amplify Gen 2がCDKと連携していることは知ってましたが、独自のL3 ConstructやAbstruct Factory Patternの使用、カスタムリソースを使った独自Constructまで使っているとは知らなかったので勉強になりました。
かなり個人的な話としてはDynamoDBのGSIを複数同時変更できる独自Constructは普通の環境でも使ってみたいなと思えました。
”AWS CDKを選定しなかった理由”から見るCDKの現在地
登壇者:@_watany
CDKの採用事例と現場とのギャップ、なぜギャップがあるのかが言語化されたセッションでした。自社では開発も運用もやることが多いので課題は少ないのです。ただ、他社の場合特にメンバー、業務形態、スコープなどの部分は選定時にもろに影響を受ける部分だなと自分も日々感じているので共感できる内容でした。
こういった内容を一方的に聞くだけでなく、良い方向に議論や共感できるように今後のイベントでワールドカフェのようなものも開催したいなと考えました。
※ワールドカフェの補足
AWS CDK コンストラクトの分割戦略:レベル指向プラクティスの実践
登壇者:@WinterYukky
Stackの分割でなくConstructでリソースを分割していくという話は、JAWS-UG CDK支部コミュニティの中では浸透してきた話かなと思います。その中でさらにConstruct分割をどういう戦略で行っていくべきなのか考えるセッションだったかと思います。
途中紹介のあったリソースベースかコンポーネントベースでの分割かは、扱うコンピューティングリソースによって使い分けてましたがこれから作る際にどういう戦略で考えるのか参考になりそうな発表でした。
App Staging Synthesizerに入門する
登壇者:@skrirdev
AWS CDKをアカウント/リージョンで最初に実行する際にBootstrapを実行する必要があります。現状のBootstrapにいくつか課題があり、それを解決するためのApp Staging Synthesizerについての紹介でした。独自実装せずにイメージを登録するECRリポジトリを分けれたり、テンプレートやアセットを置くS3を分けれたりなど、特定の領域では効果を発揮しそうな内容のご紹介でした。存在を知らなかった勉強になりました。
まだアルファ版の機能なので、今後の動きに注目です。
今こそ始める、CDKコンストラクトライブラリ開発 ― 入門から実践まで
登壇者:@tmokmss
自分でCDKコンストラクトライブラリを開発して外部に公開するうえで役立つ知見を紹介いただきました。Construct Hubなど存在はしっていても自分で作って公開したことはなかったので、jsii準拠するためのTSの書き方やConstrct内のLambdaの書き方など非常に参考になる情報が満載でした。CDkのライブラリバージョンのアンケートも実施いただき、自分が正確に把握できていないなと戒めにもなりました。
内容と関係ないですがこの時間にかなり雷が出ていたのでドキドキしながら聞いてました。
大規模ドラレコデータ収集・機械学習基盤を支えるAWS CDK 〜導入・運用事例紹介〜
登壇者:@PEmugi2
資料公開次第リンク追加
Go株式会社での実際のPJでどのようにCDKを活用したのか、その中で分かったプラクティスを共有いただきました。CDKを実装する際のアーキテクチャの検討やCI/CDの導入、環境分離をどのように実現しているかなどこれからCDKを本番システムで使っていきたい方に非常に有用なセッションでした。
自分も改めてベストプラクティスを確認したり、量産QA環境の構築は新しい知見だったので勉強になりました。
登壇の中で、コミュニティを知っていればもっと早くにわかったかもという趣旨の発言もいただいたので、今後もいろんな方にCDKコミュニティ自体を知ってもらうための活動も重要なのかなと考えたりもしました。
AWS CDKにおける「再利用性」を考える
登壇者:@365_step_tech
トリはAWS Heroの後藤さんに、Constructを再利用可能にするための実装の考え方を共有いただきました。特にIxxリソースがCDK上でどう扱われるのか図や言語化されていて、どういったものなのかの理解が深まりました。またバレルについても知らなかったですが簡単に始められそうなのでここからまず初めてみようかなと思える内容でした。
ワークショップの開催も合わせて実施いただき本当にありがとうございました!
イベント後
イベント後は公式で懇親会も実施いたしました。AWSさんのオフィスの上階で実施し、事前支払いいただいタみなさんと豪華な食事で歓談しながらイベントの振り返りなどできたかなと思います。実はSecurity JAWS DAYSでこちら行ったことがあり羨ましいなと思ったのでこちらお願いして使用させてもらいました。
もしイベント参加された方でまだアンケート回答してない方いましたら、来年開催するための励みになりますので是非こちらからお願いします🙏
感想
去年と比べてワークショップも正式に開催でき、CfPも選考が必要になる規模の応募をいただき、益々CDKの発展を感じられたイベントになりました。冒頭話してましたが間違いなくCDKが世界で1番熱い場所になってたかと思います!
最近はCDKに関わるのもレビューばかりでしたが、もっとCDKの深い部分を知っていきたいと思えるような豪華なセッションで自分も楽しめました。
内部の運営議事録見返すとCDK Conferenceやるかと決めたのが今年の1月後半で約半年ぐらい徐々に準備して始めてたんだなと思い返してました。CDK支部の運営のみんなありがとうございました!
そして、スポンサーいただいた株式会社Relic様、株式会社ゆめみ様、クラスメソッドの関係者様、登壇者の方、CfP応募いただいた方、配信協力いただいた配信部の方、AWSJの方、ワークショップなどボランティア参加の方、素敵なイラストを作成いただいた@usanomi_さん、最後にオフライン/オンラインで参加いただいた皆さん本当にありがとうございました!